/**
 * Created by zby on 2018/3/25.
 */
abstract class MotorVehicles {
    abstract void brake();
}

interface MoneyFare {
    void charge();
}

interface ControlTemperature {
    void controlAirTemperature();
}

class Bus extends MotorVehicles implements MoneyFare {
    void brake() {
        System.out.println("公共汽车使用毂式刹车技术");
    }

    public void charge() {
        System.out.println("公共汽车：一元/张，不计算公里数");
    }
}

class Taxi extends MotorVehicles implements MoneyFare, ControlTemperature {
    void brake() {
        System.out.println("出租车使用盘式刹车技术");
    }

    public void charge() {
        System.out.println("出租车：2元/公里，起价三公里");
    }

    public void controlAirTemperature() {
        System.out.println("出租车安装了Hair空调");
    }
}

class Cinema implements MoneyFare, ControlTemperature {
    public void charge() {
        System.out.println("电影票：门票，十元/张");
    }

    public void controlAirTemperature() {
        System.out.println("电影院安装了中央空调");
    }
}

public class Exmaple6_3 {
    public static void main(String[] args) {
        Bus bus101 = new Bus();
        Taxi buletaxi = new Taxi();
        Cinema redStarCinema = new Cinema();
        MoneyFare fare;
        ControlTemperature temperature;
        fare = bus101;
        bus101.brake();
        fare.charge();
        fare = buletaxi;
        temperature = buletaxi;
        buletaxi.brake();
        fare.charge();
        temperature.controlAirTemperature();
        fare = redStarCinema;
        temperature = redStarCinema;
        fare.charge();
        temperature.controlAirTemperature();
    }
}
